package com.tudouji.project.wlinfo.mapper;

import com.tudouji.project.farepay.domain.FarepayDetails;
import com.tudouji.project.wlinfo.domain.Wlinfo;

import java.math.BigDecimal;
import java.util.List;

/**
 * 物流信息Mapper接口
 *
 * @author tudouji
 * @date 2021-10-27
 */
public interface WlinfoMapper
{
    /**
     * 查询物流信息
     *
     * @param guid 物流信息ID
     * @return 物流信息
     */
    public Wlinfo selectWlinfoById(String guid);
    public Wlinfo selectWlinfoByRelateid(String guid);

    /**
     * 查询物流信息列表
     *
     * @param wlinfo 物流信息
     * @return 物流信息集合
     */
    public List<Wlinfo> selectWlinfoList(Wlinfo wlinfo);

    /**
     * 新增物流信息
     *
     * @param wlinfo 物流信息
     * @return 结果
     */
    public int insertWlinfo(Wlinfo wlinfo);

    /**
     * 修改物流信息
     *
     * @param wlinfo 物流信息
     * @return 结果
     */
    public int updateWlinfo(Wlinfo wlinfo);

    /**
     * 删除物流信息
     *
     * @param guid 物流信息ID
     * @return 结果
     */
    public int deleteWlinfoById(String guid);

    /**
     * 批量删除物流信息
     *
     * @param guids 需要删除的数据ID
     * @return 结果
     */
    public int deleteWlinfoByIds(String[] guids);

    public List<Wlinfo> selectWlinfoListPemis(Wlinfo info);

    public List<Wlinfo> selectWlinfoListByPerm(Wlinfo wlinfo);
    public BigDecimal selectWlinfoListByPermSum(Wlinfo wlinfo);

    public List<Wlinfo> selectWlinfoByIds(FarepayDetails info);

    public List<Wlinfo> findSOA(Wlinfo info);

    Wlinfo getWlinfoByCarCode(Wlinfo info);

    List<Wlinfo> findWlinfo(Wlinfo whinfo);

    void updateWlinfoPayStat(Long id);

    void updateWlinfoUnPayStat(Long id);

    Wlinfo findOrderids(Wlinfo wlinfo);
}
